﻿#define _CRT_SECURE_NO_WARNINGS//写一个宏，可以将一个整数的二进制位的奇数位和偶数位交换。
#include<stdio.h>
#define SWAP_BIT(n)  n=(((n&0xaaaaaaaa)>>1) + ((n&0x55555555)<<1))//把它的奇数位拿出来向左移一位，把它的偶数位拿出来向右移一位

int main()
{
	int a = 13;
	//00000000000000000000000000001010
	//00000000000000000000000000000101
	SWAP_BIT(a);
	printf("%d\n", a);
	SWAP_BIT(a);
	printf("%d\n", a);

	return 0;
}